Modeling

I am using a conditional binomial model to determine what factors impact movement decisions of territorial common ravens during the winter in Yellowstone. I will look at if various predictors impact if a raven decided to leaves its territory, and if it did, if it visit the Gardiner hunting region or not. The largest predictors here revolve around food availability of carrion created by human hunting activity and wolves.

There are two data sets, one for each part of the conditional model. The first one includes all of the days during the Yellowstone Wolf Project winter study periods (Nov 15- Dec 15 & Mar 1 - Mar 30) because my main predictor is the presence of wolf kills within a ravens territory and the carcass data is most reliable for that period of time due to GPS collar fix rates.
The second data set includes all winter from the start of the hunting season (varies by year, but always in the last week of October) to the end of March (end of late winter study). I can include these other periods because I am no longer considering wolf kills as a predictor because the raven at this point in the conditional model has already decided to leave its territory. This also allows me to have more data on days with low or no hunter gutpile availability from January and February.
For both data sets, all data points are excluded if that raven had less than 5 GPS points and the movement decisions was the negative for that binomial model (didn’t leaves its territory or didn’t visit the hunting area).

## dataset for part 1 of conditional model
ws_model_data <- read_csv(here("data", "clean", "commute_data.csv")) %>% 
  
  #restricting to only winter study months
  filter((paste(month, day, sep = "-") >= "11-15" &
            paste(month, day, sep = "-") <= "12-15") |
          (paste(month, day, sep = "-") >= "3-1" &
            paste(month, day, sep = "-") <= "3-30")) %>% 
  
  #removing days when there is less than 5 GPS point
  #unless the result is Jardine
  filter(!(n_point < 5 & terr_bin == F)) %>% 
  
  #only columns used in model
  dplyr::select(terr_bin, raven_id, rf_active_kill, final_take_bms1, final_take, 
                hunt_season, rf_avg_terr_kill_density, dist2nentrance, 
                study_period, temp_max, snow_depth, prop_group_left_terr) %>% 
  
  #making sure rows are complete
  filter(complete.cases(.)) 
  

## dataset for part 2 of conditional model
hunt_model_data <- read_csv(here("data", "clean", "commute_data.csv")) %>%

  #only have days ravens decided to leave territory
  filter(terr_bin == 1) %>% 
  
  #removing days when there is less than 5 GPS point
  #unless the result is Jardine
  filter(!(n_point < 5 & hunt_bin == F)) %>% 
  
  
  #only columns used in model
  dplyr::select(hunt_bin, raven_id, final_take_bms1, final_take, hunt_season,
                dist2nentrance, study_period, temp_max, snow_depth, prop_group_visit_hunt) %>% 
  
  #making sure rows are complete
  filter(complete.cases(.)) 

Here is a description of all the model covariates - rf_active_kill: if a kill detected through the RF predictive model is present on the ravens territory or not - final_take_bms1: the estimated available biomass from human hunting adjusted for relative weights of various species (the multiplier for each is 0.35*deer, 1*elk, 2.15*bison). The biomass from the previous day is rolled over at 0.25x rate - hunt_season: if it is currently within the hunting season or not. The hunting season for MTFWP is defined by policy. The bison hunting season starts when bison are regularly taken from the surveys done by the Bison Project since that hunt’s timing is dictated by weather and migration
- rf_avg_terr_kill_density: the average number of kills per 30 days during early or late winter study period - dist2nentrance: distance from raven territory to the north entrance station - study_period: early or late winter study - temp_max: daily maximum temperature - snow_depth: daily snow depth prop_group_left_terr: the proportion of other ravens that left their territory prop_group_visit_hunt: the proportion of other ravens that visited the Gardiner hunting region ## Part 1 of conditional model The first part of the conditional model predicts if a raven will leaves it territory or not.

DEPENDENT VARIABLE
terr_bin
1 = left territory
0 = stayed on territory

I am reporting the results from two different models that use a different covariate to represent the hunting availability. The first on is the hunting biomass, which is a more fine scale daily estimate of hunter take. This relies on elk movements tracked using GPS collars to add variation to the MTFWP hunting season. The bison take estimate depends on daily surveys performed by the NPS Bison Project. I report both of these models because the biomass covariate has so much uncertainty in how it is calculated during the MTFWP season since it doesn’t actually quantify the number of daily kills. It tries to account for daily variation in take by using elk movement to proxy how many individuals are available to be taken. It also includes a multiplier for the relative biomass (numbers in covariate explanation above) that has elk as the baseline and deer and bison multiplied to be greater or less than elk. It is very possible that a reader doesn’t like or believe it is calculated correctly. By also including the hunting season model we can show that the overall hunting period itself, regardless of the daily biomass availability, has an effect on decision making. Then, we can say that we tried to get finer scaled using the biomass covariate. The results are similar enough that it is believable and doesn’t drastically change interpretation, but a reader can disregard that part if they want.
Another idea is that I can go for something inbetween and at least remove the relative weight of the animals from the calculation and just have the estimated take number. It seems like this leads to pretty similar results, though it won’t be shown here.
1. bms_window: The most specific is the a measure of the available biomass.

mod_terr_bms <- glmer(terr_bin ~ (1|raven_id) + rf_active_kill * scale(final_take_bms1) + scale(rf_avg_terr_kill_density) + 
                         scale(dist2nentrance) + study_period * scale(temp_max) + scale(snow_depth) + scale(prop_group_left_terr),
                       data = ws_model_data,
                       family = "binomial",
                       nAGQ = 40,
                       control = cntrl)
summary(mod_terr_bms)
## Generalized linear mixed model fit by maximum likelihood (Adaptive
##   Gauss-Hermite Quadrature, nAGQ = 40) [glmerMod]
##  Family: binomial  ( logit )
## Formula: terr_bin ~ (1 | raven_id) + rf_active_kill * scale(final_take_bms1) +  
##     scale(rf_avg_terr_kill_density) + scale(dist2nentrance) +  
##     study_period * scale(temp_max) + scale(snow_depth) + scale(prop_group_left_terr)
##    Data: ws_model_data
## Control: cntrl
## 
##       AIC       BIC    logLik -2*log(L)  df.resid 
##    1140.4    1206.6    -558.2    1116.4      1816 
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -7.9552  0.1341  0.2184  0.3691  3.4784 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  raven_id (Intercept) 2.209    1.486   
## Number of obs: 1828, groups:  raven_id, 20
## 
## Fixed effects:
##                                           Estimate Std. Error z value Pr(>|z|)
## (Intercept)                                2.83214    0.39763   7.123 1.06e-12
## rf_active_killTRUE                        -0.84508    0.40682  -2.077   0.0378
## scale(final_take_bms1)                    -0.01926    0.07886  -0.244   0.8070
## scale(rf_avg_terr_kill_density)            0.40922    0.40247   1.017   0.3093
## scale(dist2nentrance)                     -0.30534    0.37862  -0.806   0.4200
## study_periodlate                          -0.42413    0.20649  -2.054   0.0400
## scale(temp_max)                           -0.18614    0.11358  -1.639   0.1012
## scale(snow_depth)                          0.14586    0.10797   1.351   0.1767
## scale(prop_group_left_terr)                0.14669    0.08473   1.731   0.0834
## rf_active_killTRUE:scale(final_take_bms1)  0.30192    0.56954   0.530   0.5960
## study_periodlate:scale(temp_max)           0.09580    0.16502   0.581   0.5615
##                                              
## (Intercept)                               ***
## rf_active_killTRUE                        *  
## scale(final_take_bms1)                       
## scale(rf_avg_terr_kill_density)              
## scale(dist2nentrance)                        
## study_periodlate                          *  
## scale(temp_max)                              
## scale(snow_depth)                            
## scale(prop_group_left_terr)               .  
## rf_active_killTRUE:scale(final_take_bms1)    
## study_periodlate:scale(temp_max)             
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) rf__TRUE s(__1) s(____ scl(2) stdy_p scl(t_) scl(s_) s(___)
## rf_ctv_TRUE -0.016                                                            
## scl(fnl__1) -0.043  0.006                                                     
## scl(rf____)  0.173 -0.015    0.002                                            
## scl(dst2nn)  0.075  0.023    0.001  0.082                                     
## study_prdlt -0.297 -0.036    0.127  0.010  0.010                              
## scl(tmp_mx)  0.019 -0.050   -0.078 -0.009  0.009 -0.086                       
## scl(snw_dp)  0.154 -0.052   -0.184  0.009  0.018 -0.568  0.189                
## scl(prp___) -0.051  0.010   -0.011  0.026  0.014  0.258  0.020  -0.189        
## r__TRUE:(__ -0.033  0.421   -0.101 -0.014  0.005  0.106 -0.048  -0.132   0.003
## stdy_pr:(_)  0.013  0.056    0.094  0.011  0.002 -0.124 -0.649   0.078   0.026
##             r__TRUE:
## rf_ctv_TRUE         
## scl(fnl__1)         
## scl(rf____)         
## scl(dst2nn)         
## study_prdlt         
## scl(tmp_mx)         
## scl(snw_dp)         
## scl(prp___)         
## r__TRUE:(__         
## stdy_pr:(_) -0.028
  1. hunt_season: The least specific is just whether it is within the hunting season.
    One massive thing to note here is that i have removed the interaction effect. When I updated the data with the bison specific polygon and the bison hunting start date, it made standard error for the interaction 160. That’s pretty terrible.
mod_terr_hseason <- glmer(terr_bin ~ (1|raven_id) + rf_active_kill + hunt_season + scale(rf_avg_terr_kill_density) + 
                            scale(dist2nentrance) + study_period * scale(temp_max) + scale(snow_depth) + scale(prop_group_left_terr),
                         data = ws_model_data,
                         family = "binomial",
                         nAGQ = 40,
                         control = cntrl)
summary(mod_terr_hseason)
## Generalized linear mixed model fit by maximum likelihood (Adaptive
##   Gauss-Hermite Quadrature, nAGQ = 40) [glmerMod]
##  Family: binomial  ( logit )
## Formula: 
## terr_bin ~ (1 | raven_id) + rf_active_kill + hunt_season + scale(rf_avg_terr_kill_density) +  
##     scale(dist2nentrance) + study_period * scale(temp_max) +  
##     scale(snow_depth) + scale(prop_group_left_terr)
##    Data: ws_model_data
## Control: cntrl
## 
##       AIC       BIC    logLik -2*log(L)  df.resid 
##    1133.8    1194.4    -555.9    1111.8      1817 
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -7.8293  0.1303  0.2201  0.3719  2.6237 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  raven_id (Intercept) 2.09     1.446   
## Number of obs: 1828, groups:  raven_id, 20
## 
## Fixed effects:
##                                  Estimate Std. Error z value Pr(>|z|)    
## (Intercept)                       2.14632    0.47915   4.479 7.48e-06 ***
## rf_active_killTRUE               -0.93531    0.36867  -2.537   0.0112 *  
## hunt_seasonTRUE                   0.83539    0.35862   2.329   0.0198 *  
## scale(rf_avg_terr_kill_density)   0.38958    0.39292   0.992   0.3214    
## scale(dist2nentrance)            -0.34419    0.37016  -0.930   0.3524    
## study_periodlate                 -0.53459    0.20840  -2.565   0.0103 *  
## scale(temp_max)                  -0.23303    0.11688  -1.994   0.0462 *  
## scale(snow_depth)                 0.17562    0.10575   1.661   0.0968 .  
## scale(prop_group_left_terr)       0.13329    0.08569   1.555   0.1198    
## study_periodlate:scale(temp_max)  0.13496    0.16540   0.816   0.4145    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) r__TRU h_TRUE s(____ scl(2) stdy_p scl(t_) scl(s_) s(___)
## rf_ctv_TRUE  0.008                                                          
## hnt_ssnTRUE -0.585 -0.015                                                   
## scl(rf____)  0.150 -0.011 -0.021                                            
## scl(dst2nn)  0.089  0.025 -0.052  0.088                                     
## study_prdlt -0.083 -0.086 -0.260  0.020  0.026                              
## scl(tmp_mx)  0.139 -0.028 -0.217 -0.005  0.019 -0.009                       
## scl(snw_dp)  0.044  0.002  0.127  0.001  0.008 -0.541  0.150                
## scl(prp___)  0.001  0.013 -0.073  0.027  0.017  0.274  0.028  -0.206        
## stdy_pr:(_) -0.055  0.067  0.116  0.009 -0.004 -0.157 -0.661   0.093   0.021

Model AIC comparisons.

AIC(mod_terr_bms)
## [1] 1140.428
AIC(mod_terr_hseason) #better
## [1] 1133.787

It seems like it does matter what hunting covariate I use. The ravens did respond positively to the overall hunting season, but not the relative available hunter biomass. While the direction of the effects is the same, there was no evidence that the actually amount of biomass mattered when deciding whether to leave their territories or now. It seem more important that there may be biomass available at all.
Following predictions, the active kill covariate is important with an active kill within 1 km of their territory reducing the chances of the raven deciding to leave.
The average kill density in a ravens territory did not impact movement decisions. So they don’t consider the past or prior knowledge of their territory and are only responding to more immediate stimuli. This makes sense when considering that a high productivity territory is still unlikely to have a kill made each day. Then their response to no immediate kills in their territory is to leave, which is still a gamble since you don’t know what the food situation will be like in Gardiner or elsewhere; however, in most cases those human sites will still be less of a gamble than a raven in a high productivity territory.
The study period being early or late winter has a negative effect in the late winter in both models, which follows my prediction about how pre-breeding behaviors would impact raven movement by keeping them on territory more often.
The maximum daily temperature had a negative effect in both models. Higher temperatures lowered the chance of a raven leaving its territory. A good reason for this might be that the colder days require more energy to maintain body temperature, so a more guaranteed food sources is taken. Then on warmer days when temperature regulation is easier, they don’t risk as much by staying on their territory. An interaction between temperature and study period was tested to tell if ravens were influenced by temperature differently at different times of year and the effect was insignificant and is not included here.
Snow depth had the same effect found from the Walker et al. study that greater snow depth increased the chances of the raven being in anthropogenic hunting areas (leaving their territory). This isn’t a perfect conclusion though because even though they leave their territory, they could still be staying in the national park. However, it does agree with the alternative logic that higher snow depth leads to ungulate migration and more potential hunting availability. So this might be a cue that they are not following or attempting to gain knowledge about actual hunting availability (hence a lack of effect for the actual hunting covariate) and are instead following proxies for it. snow depth and the hunting biomass covariates have a high correlation in the model output. This is likely because the biomass calculation takes into account elk migration timing, which is heavily influenced by snow depth.
One super interesting thing to note is that I ran this model with the group travel covariate before adding the temperature, and the group travel stopped being significant after the addition of the temperature. So it would seem like they don’t take into account the other ravens that much and instead are all responding to the same stimuli.
Here is the bootstrapped parameter confidence intervals for model 1 using the biomass estimate as the hunting covariate.

Part 2 of conditional model

The second part of the conditional model predicts if, when a raven left its territory, if it visited the Gardiner hunting region.

DEPENDENT VARIABLE
hunt_bin
1 = visited hunting
0 = visited other place

Again, I am looking at models with both hunting covariates. However, this time I removed the wolf kill and study period covariates.
I don’t consider wolf kills anymore because, at this point in the model, the raven has already left its territory. It is true that a raven could travel to a wolf kill outside of its territory, but I am interested in the decision to travel to the Gardiner hunting region, so those other options don’t matter as much. That includes other cities and towns. This part of the conditional model acknowledges their presence, but isn’t really interested in them specifically.
I don’t consider study period anymore because, again, in this part of the conditional model the raven has already decided to leave its territory. The breeding behavior hypothesis was that ravens would want to stay on their territory more during late winter to perform breeding behaviors. This doesn’t matter anymore here.

1. bms_window: The most specific is the a measure of the available biomass.

mod_hunt_bms <- glmer(hunt_bin ~ (1|raven_id) + scale(final_take_bms1) + scale(dist2nentrance) + 
                         scale(prop_group_visit_hunt) + scale(temp_max) + scale(snow_depth),
                       data = hunt_model_data,
                       family = "binomial",
                       nAGQ = 40,
                       control = cntrl)
summary(mod_hunt_bms)
## Generalized linear mixed model fit by maximum likelihood (Adaptive
##   Gauss-Hermite Quadrature, nAGQ = 40) [glmerMod]
##  Family: binomial  ( logit )
## Formula: 
## hunt_bin ~ (1 | raven_id) + scale(final_take_bms1) + scale(dist2nentrance) +  
##     scale(prop_group_visit_hunt) + scale(temp_max) + scale(snow_depth)
##    Data: hunt_model_data
## Control: cntrl
## 
##       AIC       BIC    logLik -2*log(L)  df.resid 
##    3591.1    3634.9   -1788.6    3577.1      3821 
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -5.6969 -0.5656  0.2976  0.5821  4.2882 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  raven_id (Intercept) 3.814    1.953   
## Number of obs: 3828, groups:  raven_id, 20
## 
## Fixed effects:
##                              Estimate Std. Error z value Pr(>|z|)    
## (Intercept)                   0.07973    0.46817   0.170 0.864768    
## scale(final_take_bms1)        0.11913    0.04823   2.470 0.013519 *  
## scale(dist2nentrance)        -1.83095    0.49636  -3.689 0.000225 ***
## scale(prop_group_visit_hunt)  0.57956    0.04824  12.014  < 2e-16 ***
## scale(temp_max)              -0.15944    0.04523  -3.525 0.000424 ***
## scale(snow_depth)             0.05159    0.04819   1.070 0.284397    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) s(__1) scl(2) s(___) scl(t_)
## scl(fnl__1)  0.001                             
## scl(dst2nn)  0.094 -0.002                      
## scl(prp___) -0.004 -0.128 -0.018               
## scl(tmp_mx) -0.011 -0.091  0.009  0.080        
## scl(snw_dp) -0.013 -0.117 -0.003 -0.017  0.381
  1. hunt_season: The least specific is just whether it is within the hunting season
    There is no issues with inflated standard errors here because this model does not include any of the wolf kill covariates.
mod_hunt_hseason <- glmer(hunt_bin ~ (1|raven_id) + hunt_season + scale(dist2nentrance) + 
                            scale(prop_group_visit_hunt) + scale(temp_max) + scale(snow_depth),
                          data = hunt_model_data,
                          family = "binomial",
                          nAGQ = 40,
                          control = cntrl)
summary(mod_hunt_hseason)
## Generalized linear mixed model fit by maximum likelihood (Adaptive
##   Gauss-Hermite Quadrature, nAGQ = 40) [glmerMod]
##  Family: binomial  ( logit )
## Formula: hunt_bin ~ (1 | raven_id) + hunt_season + scale(dist2nentrance) +  
##     scale(prop_group_visit_hunt) + scale(temp_max) + scale(snow_depth)
##    Data: hunt_model_data
## Control: cntrl
## 
##       AIC       BIC    logLik -2*log(L)  df.resid 
##    3548.1    3591.8   -1767.0    3534.1      3821 
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -5.9848 -0.5476  0.2841  0.5674  4.7828 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  raven_id (Intercept) 3.735    1.933   
## Number of obs: 3828, groups:  raven_id, 20
## 
## Fixed effects:
##                              Estimate Std. Error z value Pr(>|z|)    
## (Intercept)                  -0.48378    0.47029  -1.029 0.303629    
## hunt_seasonTRUE               0.77755    0.11122   6.991 2.73e-12 ***
## scale(dist2nentrance)        -1.85464    0.49155  -3.773 0.000161 ***
## scale(prop_group_visit_hunt)  0.54532    0.04896  11.139  < 2e-16 ***
## scale(temp_max)              -0.17626    0.04580  -3.849 0.000119 ***
## scale(snow_depth)             0.16720    0.05109   3.273 0.001066 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) h_TRUE scl(2) s(___) scl(t_)
## hnt_ssnTRUE -0.169                             
## scl(dst2nn)  0.094 -0.015                      
## scl(prp___)  0.017 -0.126 -0.017               
## scl(tmp_mx)  0.004 -0.090  0.008  0.090        
## scl(snw_dp) -0.061  0.299 -0.010 -0.053  0.331

Model AIC comparison.

AIC(mod_hunt_bms)
## [1] 3591.147
AIC(mod_hunt_hseason) #better
## [1] 3548.087

In both of the models the hunting covariate was significant and followed the trend of more hunting, more likely the raven is to visit the hunting area after it has decided to leave its territory.
The distance to the hunting area was also always significant with ravens holding territories closer to the hunting area visiting more frequently. Makes sense that the less time and energy it takes to get there makes it more worth checking out the area. For some ravens that are really close, it also gives them the advantage of potentially being able to hear gunshots that indicate potential hunter success.
The proportion of other ravens that are visiting the hunting area has a positive effect. When considered in conjunction with the effect of the group covariate in part 1 of the conditional model: ravens aren’t influenced by other ravens when deciding to leave their territory; however, if they do choose to leave they are often visiting the same destinations as the rest of the ravens that leave their territories. So if they choose to leave, which is a decision based on abiotic factors like weather and available local food, they then utilize social cues and shared information.
The maximum daily temperature had a negative effect in both models, lowering the chance of a raven visiting the hunting area if it decided to leave its territory during warmer weather.
The effect of snow depth is more uncertain from these models since only model 1 found a significant effect and the other model was not significant. The effect direction was the same though and matches with the effect found by Walker et al.
Here is the bootstrapped parameter confidence intervals for model 1 using the biomass estimate as the hunting covariate. ## Figures Here is a table that shows the number of times raven made each decision. Beth had the idea to make some kind of heat map similar to the map below that has individual examples of ravens GPS points, but for raven decisions. This would be so there was some, more easily understandable (the giant mass of GPS points is hard to comprehend and compare), visual example. The Gardiner hunting region and the territory would be heat map areas and then the times that the raven left its territory but didn’t go to Gardiner would leave the GPS points like map 1.B. This would mean that you could only have 1 raven per map so that the heat map reflected that individuals decisions.

(raven_decisions <- read_csv(here("data",  "clean", "commute_data.csv")) %>%
   group_by(raven_id) %>% 
   summarize(terr = sum(terr_bin == FALSE),
             other = sum(terr_bin == TRUE & hunt_bin == FALSE),
             hunt = sum(hunt_bin == TRUE)) %>% 
  # adding column for total sample size for each raven
   mutate(n = hunt + other + terr))
## # A tibble: 20 × 5
##    raven_id  terr other  hunt     n
##    <chr>    <int> <int> <int> <int>
##  1 7484        42     8    64   114
##  2 7485       108   220     0   328
##  3 7489        27   155   275   457
##  4 7489_2       4    24    14    42
##  5 7490_3      21    84   239   344
##  6 7492        69   144   325   538
##  7 7493_2      62    48     1   111
##  8 7494       105   184     0   289
##  9 7495        14    19   115   148
## 10 7530       148    50   441   639
## 11 7531        24    81   116   221
## 12 7561        58   194   189   441
## 13 7565        35   111     9   155
## 14 7595        36   160   149   345
## 15 7640_3      20    69   289   378
## 16 7652_2       5   113    74   192
## 17 7665        41   255   148   444
## 18 7672        13    88    46   147
## 19 8900         0    37    77   114
## 20 8902         0     3     1     4

But I think an even better option would be a bar chart with 3 levels showing the proportion of days making whatever decisions (similar to how we handled the raven foraging).

Here is an visual example of three different ravens with territories at different distances from the Gardiner hunting region area and their GPS points.
Of the three ravens, the orange raven with its territory at Old Faithful is the only one that doesn’t visit the hunting area which is why it looks the same in both maps. Instead, its trips are consistently to the closer town of West Yellowstone, presumably to feed on human refuse. It probably makes this decision because the time investment to travel up to the Gardiner hunting region is not worth it when an alternative location with consistent foraging is nearby.
Even though purple is a similar distance to West Yellowstone where orange visits frequently, it chooses to travel to the north instead. It probably makes this choice because unlike orange, the time investment is about the same between the two locations. And Gardiner has a much higher level of hunting offering a potentially better foraging opportunity while also have human refuse as a back up. Almost all trips north for purple resulted in a visit to the Gardiner hunting region, and the few remaining points up north are probably because of a missed fix in the hunting area. Most of the time when the purple chooses to leave its territory, but not visit the Gardiner hunting region, it is actually still hanging out around its territory but just outside of the 1 kilometer around the 90% minimum convex polygon I am currently considering their territory.
Green’s territory is so close to the Gardiner hunting region that it only makes sense that it visits so often, given that the flight time for that trip is less than 30 minutes. On days that it leaves its territory but does not visit the Gardiner hunting region it visits various areas in the northern range inside the park and even ventures eastward a few times during October before it gets too cold.
One super interesting thing to note is that you would think that there would be more obvious instances of ravens visiting wolf kills outside their territories which would show up as small concentrations of GPS points in map B. However, this almost never occurs, or at least isn’t obvious. I think this is because either the carcass is close enough to their territory that I still consider the raven as having not left. Or, ravens will frequently visit wolf kills outside their territory, followed by a trip to the Gardiner hunting area. This second explanation actually lines up with some of my experiences seeing a group of ravens fly into a carcass sometime in the morning, only to leave not long after. I look into this a farther down using some tables.
Map A shows the all GPS points made by each of the three ravens. Map B shows the GPS points for the three ravens when they choose to exit their territories (highlighted in red), but did not visit the Gardiner hunting region.


Here is a heat map of the raven GPS points outside the park from November and March along with a polygon denoting the area used to determine if a raven attempted to search for hunter created resources during the MTFWP rifle hunting season and the tribal bison hunt. There is a separate polygon for the MTFWP rifle hunting season and the tribal bison hunt. The MTFWP hunting region is defined as the space 5 km from all roads within 10 km north of the national park boundary. This space has a high density of hunting activity in close proximity to the northern range of the park. The 5 km buffer around roads was used as a reasonable distance for a hunter to travel. There is certainly successful hunting attempts in the areas outside this polygon, but the relative number of those will be low compared to hunting within the polygon. The bison hunting region is much smaller because of bison movement and hunter effort. The bison are restricted in their movement and rarely, if ever, travel beyond the cattle grate that is place at the south end of Yankee Jim canyon. Bison hunting happens almost exclusively along the road, since the main migration path of the bison out of the park is funneled along the roadway at Beattie Gulch. Plus, if someone did successfully harvest a bison in the backcountry, that hike out would be awful, even with a large group due to the size of bison. This polygon does include the town of Gardiner along with the local landfill and water treatment ponds that ravens have been documented using as locations to forage since I made the assumption that a dominant territorial raven visiting this area would always attempt to find hunter offal, even if unsuccessful. 26% of trips to the Gardiner hunting region during the hunting season resulted in at least 1 GPS point at the landfill and water treatment pond.

Here is a map of the relevant polygons used including the study area of Yellowstone National Park, the northern range of Yellowstone, and raven territories calculated using 90% minimum convex polygons of their breeding season GPS data. All raven used for this study have territories within the boundary of the national park. In 2 cases where a territorial pair had both individuals GPS tagged, only the female was used since the GPS fix rate was higher due to better battery levels resulting from less coverage of the solar panel during the winter.
## Wolf kill visits I looked at how often ravens were visiting wolf kills when they left their territory because it looked like they didn’t visit kills that often when they left their territory but didn’t visit the Gardiner hunting region (map 1.B). This currently includes both the RF predicted wolf kills and the wolf project kill database to have the maximum coverage of possible kills.

source(here("scripts", "exploratory", "wolf_kill_visits.R"))
## Warning: One or more parsing issues, call `problems()` on your data frame for details,
## e.g.:
##   dat <- vroom(...)
##   problems(dat)
# table for days visiting wolf kills with no hunting visit
leave_no_hunt_wolf_kills
## # A tibble: 11 × 4
##    raven_id days_visit total_days prop_visit
##    <chr>         <int>      <int>      <dbl>
##  1 7490_3            6         27     0.222 
##  2 7492              3         63     0.0476
##  3 7531              7         39     0.179 
##  4 7561             21        133     0.158 
##  5 7595             13        126     0.103 
##  6 7640_3            6         36     0.167 
##  7 7652_2            1         47     0.0213
##  8 7665             11        171     0.0643
##  9 7672              1         49     0.0204
## 10 8900              1         12     0.0833
## 11 8902              1          3     0.333
# table for days visiting wolf kills with hunting visit
hunt_wolf_kills
## # A tibble: 16 × 4
##    raven_id days_visit total_days prop_visit
##    <chr>         <int>      <int>      <dbl>
##  1 7484             11         63     0.175 
##  2 7489             16        257     0.0623
##  3 7490_3           11        152     0.0724
##  4 7492             17        248     0.0685
##  5 7495              4        108     0.0370
##  6 7530             20        378     0.0529
##  7 7531             15        100     0.15  
##  8 7561              9        142     0.0634
##  9 7565              3          6     0.5   
## 10 7595              7        132     0.0530
## 11 7640_3            6        176     0.0341
## 12 7652_2           10         49     0.204 
## 13 7665              9        125     0.072 
## 14 7672              6         32     0.188 
## 15 8900              8         33     0.242 
## 16 8902              1          1     1

It looks like wolf kill visits are not a large portion of trips outside of the territory, regardless of if the raven ends up in the Gardiner hunting region or not. Although it is more than map 1.B makes it look like. This might be because they don’t actually spend a lot of time at these kills, so they don’t accumulate GPS points there.
This tracks with the foraging paper and the relative importance of natural carrion compared to anthropogenic resources used by most ravens. It is worth noting that a fair number of times ravens do visit wolf kills before preceding to the Gardiner hunting region to search for hunter gutpiles.